// 给你一个数组 nums 和一个值 val，你需要 原地 移除所有数值等于 val 的元素。元素的顺序可能发生改变。然后返回 nums 中与 val 不同的元素的数量。

#include <iostream>
#include <vector>

using std::cout;
using std::vector;

class Solution {
public:
    int removeElement(vector<int>& nums, int val) {
        int left,right;
        left = right = 0;
        while(right < nums.size())
        {
            if(nums[right] != val)
            {
                nums[left ++] = nums[right ++];
            }
            else
            {
                ++ right;
            }
        }
        return left;
    }
};